Hi guys
I make program to select data every day automatically by timer every second in c#
In sql server 2005 i write the following query
ALTER proc [dbo].[JeddahSalesAll]
as
SELECT ROW_NUMBER() OVER (ORDER BY dbo.[Jeddah-Live$Sales Header].No_) AS [S.N], dbo.[Jeddah-Live$Sales Line].[Document No_] AS 'OrderNo',
dbo.[Jeddah-Live$Sales Header].[Bill-to Name] AS 'CustomerNo', dbo.[Jeddah-Live$Sales Line].Area AS 'Shippment Type', dbo.[Jeddah-Live$Sales Line].Description AS 'Description',
dbo.[Jeddah-Live$Sales Header].[Pump No_] AS 'PumpNo', CAST(ROUND(dbo.[Jeddah-Live$Sales Line].Quantity, 0, 1) AS int) AS 'Required Qunatity',
CAST(ROUND(dbo.[Jeddah-Live$Sales Line].[Quantity Shipped], 0, 1) AS int) AS 'Shipped Quantity', CAST(ROUND(dbo.[Jeddah-Live$Sales Line].[Outstanding Quantity], 0,
1) AS int) AS 'Outstanding Qunatity '
FROM dbo.[Jeddah-Live$Sales Header] INNER JOIN
dbo.[Jeddah-Live$Sales Line] ON dbo.[Jeddah-Live$Sales Header].No_ = dbo.[Jeddah-Live$Sales Line].[Document No_] AND
dbo.[Jeddah-Live$Sales Header].[Sell-to Customer No_] = dbo.[Jeddah-Live$Sales Line].[Sell-to Customer No_]
WHERE DATEDIFF(d,dbo.[Jeddah-Live$Sales Line].[Shipment Date],GETDATE()) = 0
IN C# WINDOWS FORM VISUAL STUDIO 2008 IN TIMER TICK EVENT INTERVAL IS 1000MILISECOND(EVERY SECOND)
ales.SalesClass SalesClass1 = new Sales.SalesClass();
DataTable dt = SalesClass1.ShowSalesData("Data Source=192.168.1.5;Initial Catalog=Altawi-last06-01-2015;User ID=admin;Password=123");
dataGridView1.DataSource = dt;
dataGridView1[0, dataGridView1.Rows.Count - 1].Value = "Total Sum";
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells[0].Style.BackColor = Color.Yellow;
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells[1].Style.ForeColor = Color.Red;
dataGridView1.Refresh();
CLASS CODE AS FOLLOWING
class SalesClass
{
public DataTable ShowSalesData(string ConnectionString)
{
SqlConnection con = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "JeddahSalesAll";
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
DataTable dt = ds.Tables[0];
return dt;
}
code above work success no any problem
only problem the order start 8 pm in date(31/03/2015) and finish 7 am in date(01/04/2015)
at next day
what i do to show the orders done from 12 am to 7 am to show
if you have solution or suggestion to solve problem help me if possible
thanks
ahmed salah
02-Apr-2015The problem i put timer in c# code to return shipment date based on date today
and after 12 am midnight day changed and order have date before not show
suppose day work in 31/03/2015 it still until order finish and in this case shipment date will be 31/03/2015 until
order finish and will be finish in 01/04/2015
My question how to show 31/03/2015 when get date 01/04/2015 because when date changed based on getdate
ship date not changed because it register based on date that work start
so that work start will be 31/03/2015 and when date changed to 01/04/2015
no data show and records of 31/03/2015 not show
Anonymous User
02-Apr-2015ahmed salah
01-Apr-2015to more show what i need
shipped date(user enter it) time dateof insert(server date)
31/03/2015 8 pm 31/03/2015
31/03/2015 10 pm 31/03/2015
31/03/2015 1 am 01/04/2015
31/03/2015 7 am 01/04/2015
query above return 8 pm and 10 pm
but not show 1 am and 7 am
so taht what i need to show is 8 pm,10 pm,1 am,7 am
only I need to show orderes that happen in same day and data shipped after 12 until 7 am
Meaning if order still work two days i need to show it based on date starting in it
we put 31/03/2015 in the day of 01/04/2015 because shipping date start in 31/03/2015
but problem happen when order still work to another day
Anonymous User
31-Mar-2015